package top.vanchor.flexible.utils;

import org.springframework.util.StringUtils;
import top.vanchor.flexible.config.MinioConfig;
import top.vanchor.flexible.config.consts.OssConst;

/**
 * Created by IntelliJ IDEA.
 * 该工具类用于获取图片的地址
 * 数据库提供文件名以及后缀，该工具类提供有效前缀并拼接结果
 *
 * @Author : Ding
 * @create 2022/2/26 13:11
 */
public class ImageAddress {

    /**
     * 图片前缀：http......
     */
    public static String PRE_PATH;

    /**
     * 判定前缀（当文件前缀出现http或https等，说明他存的就是完整网络地址路径，直接返回）
     */
    private static final String NOT_TODO_PATH = "http";

    /**
     * 空路径（该内容为空）
     */
    private static final String NULL_PATH = null;

    public static String getAllPath(String fileName) {
        if (StringUtils.isEmpty(fileName)) {
            //空路径直接返回
            return NULL_PATH;
        }
// 若使用OSS，请使用此配置
//        PRE_PATH = "https://" + OssConst.BUCKET_NAME + "." +
//                OssConst.END_POINT + "/" + OssConst.FILE_HOST + "/";

// 若使用minIO，请使用此配置
        PRE_PATH = MinioConfig.END_POINT+"/"+MinioConfig.BUCKET_NAME+"/";
        //如果前缀有http/https，直接返回url
        return fileName.startsWith(NOT_TODO_PATH) ? fileName : PRE_PATH + fileName;
    }
}